技術文章
技術問答
My Project
iT 徵才
聊天室
2026 鐵人賽
登入/註冊
文章
問答
Tag
邦友
鐵人賽
搜尋
2024 iThome 鐵人賽
DAY
23
0
自我挑戰組
學習Java且應用
系列 第
23
篇
Java 注解(下)
16th鐵人賽
pinggg
2024-10-07 13:07:59
770 瀏覽
分享至
自定義注解
(1)除了內置的注解,Java還允許我們創建自定義注解。自定義注解本質上是一個接口,並且可以包含成員變量,這些成員變量必須有默認值或在使用時被指定。
(2)eg.
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
// 定義自定義注解
@Retention(RetentionPolicy.RUNTIME) // 指定該注解在運行時可見
@Target(ElementType.METHOD) // 指定該注解用於方法
public @interface MyAnnotation {
String value();
}
class TestAnnotation {
@MyAnnotation(value = "This is a custom annotation")
public void myMethod() {
System.out.println("Method with custom annotation");
}
}
注解詳解:
(1) @Retention:定義注解的生命週期。常見的值包括:
RetentionPolicy.SOURCE:注解僅存在於源代碼中,編譯後將被丟棄。
RetentionPolicy.CLASS:注解存在於字節碼中,但在運行時不可見。
RetentionPolicy.RUNTIME:注解在運行時仍然存在,可以通過反射獲取。
(2)@Target:定義注解可以應用的元素。常見的取值有:
ElementType.TYPE:類、接口或枚舉。
ElementType.METHOD:方法。
ElementType.FIELD:字段。
注解處理
自定義注解通常與反射結合使用,用於在運行時讀取和處理這些注解。
留言
追蹤
檢舉
上一篇
Java 注解(上)
下一篇
Java 文件輸入輸出(I/O)(上)
系列文
學習Java且應用
共
30
篇
目錄
RSS系列文
訂閱系列文
0
人訂閱
26
Java 文件輸入輸出(I/O)(下)
27
Java 應用一
28
Java 應用二
29
Java 應用三
30
總結
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
929
組
團體組數
32
組
累計文章數
20287
篇
完賽人數
534
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
18th鐵人賽
17th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
熱門問題
熱門回答
熱門文章
Claude Code 雲端實戰篇0:拿送的美金 250 額度做一個每天自動跑收集股票相關資訊的工具(總覽)
Day23 BehaviorGuard:建立 Response Policy,驗證白名單與程序身分
图片、视频、音频文件触发恶意代码执行的原理与 Kali Linux 上复现与分析实战
Roadster 為什麼能倒掛停住,還能飛下來?用三張動圖拆解背後的物理
Day 15|鐵人賽半程里程碑:小型綜合專案實戰,端到端資料分析 Pipeline 落地
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}